|+|

libretto.CoreLib.|+|$
object |+|

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
|+|.type

Members list

Concise view

Value members

Concrete methods

def IXI[A, B, C, D]: A |+| B |+| C |+| D -⚬ A |+| C |+| B |+| D
def assocLR[A, B, C]: A |+| B |+| C -⚬ A |+| B |+| C
def assocRL[A, B, C]: A |+| B |+| C -⚬ A |+| B |+| C
def bimap[A, B, C, D](f: A -⚬ B, g: C -⚬ D): A |+| C -⚬ B |+| D
def left[B]: Functor[|+|]

Disjoint union is covariant in the left argument.

Disjoint union is covariant in the left argument.

Attributes

def lmap[A, B, A1](f: A -⚬ A1): A |+| B -⚬ A1 |+| B
def notify[A, B]: A |+| B -⚬ Ping |*| A |+| B

Alias for notifyEither: Adds a Ping that fires when it is decided whether A |+| B actually contains the left side or the right side.

Alias for notifyEither: Adds a Ping that fires when it is decided whether A |+| B actually contains the left side or the right side.

Attributes

def notifyL[A, B]: A |+| B -⚬ Ping |*| A |+| B

Adds a Ping to the left case that fires when the |+| is decided.

Adds a Ping to the left case that fires when the |+| is decided.

Attributes

def notifyR[A, B]: A |+| B -⚬ A |+| Ping |*| B

Adds a Ping to the right case that fires when the |+| is decided.

Adds a Ping to the right case that fires when the |+| is decided.

Attributes

def right[A]: Monad[[x] =>> A |+| x]

Disjoint union is covariant in the right argument.

Disjoint union is covariant in the right argument.

Attributes

def rmap[A, B, B1](f: B -⚬ B1): A |+| B -⚬ A |+| B1
def signal[A, B]: A |+| B -⚬ Done |*| A |+| B

Adds a Done that completes when it is decided whether A |+| B actually contains the left side or the right side.

Adds a Done that completes when it is decided whether A |+| B actually contains the left side or the right side.

Attributes

def signalL[A, B]: A |+| B -⚬ Done |*| A |+| B

Adds a Done to the left case that completes when the |+| is decided.

Adds a Done to the left case that completes when the |+| is decided.

Attributes

def signalR[A, B]: A |+| B -⚬ A |+| Done |*| B

Adds a Done to the right case that completes when the |+| is decided.

Adds a Done to the right case that completes when the |+| is decided.

Attributes

def swap[A, B]: A |+| B -⚬ B |+| A
def switchWithL[A, B, L, C](caseLeft: L |*| A -⚬ C, caseRight: L |*| B -⚬ C): L |*| A |+| B -⚬ C
def switchWithR[A, B, R, C](caseLeft: A |*| R -⚬ C, caseRight: B |*| R -⚬ C): A |+| B |*| R -⚬ C

Concrete fields

Extensions

Extensions

extension [A, B](ab: $[A |+| B])
def switch[C](using SourcePos)(caseLeft: A -⚬ C, caseRight: B -⚬ C): $[C]
def switchWith[X, C](x: $[X])(using SourcePos)(caseLeft: A |*| X -⚬ C, caseRight: B |*| X -⚬ C): $[C]